The present invention relates to testing semiconductor devices, and more particularly, for a method for testing semiconductor devices by comparing test results from automatic test equipment ("ATE") against a design requirement data base.
Semiconductor devices, or integrated circuits are susceptible to a wide variety of defects at all stages of their manufacture. Therefore, before semiconductor circuits are shipped to the customer, they are tested. A wide variety of tests are performed including continuity tests, in which a current is applied to each signal pin on the device and the voltage drop across the pin's protective diode is measured, quiescent current test in which the static IDD current drawn by the device is measured, functional tests, in which data is presented to the inputs of the device and the outputs are tested for the correct logic levels, short circuit tests, and leakage tests. Those of skill in the art will recognize that these represent just some of the tests performed on a semiconductor device, and that combinations of some tests are applied to some pins on the device. For example, pins used with bi-directional signals, require both input and output tests to be performed.
Automatic test equipment for performing tests such as those described above is commercially available. Examples of useful equipment are the STS 6120, STS 8256, Vista LT and Vista Logic, all manufactured by Credence Systems Corporation. Other suitable ATE is also available and additional examples will occur to those of skill in the art.
FIG. 1 is a flow chart of the steps involved in testing a semiconductor device with a typical ATE. Initially, as shown in step 100, the design data base is generated for the device. The designed data base contains all the information required to manufacture a semiconductor device, including stimulation data needed to verify the operation of the device. In general, the design data base consists of a "netlist" which describes the actual circuitry, libraries containing data on the various elements which comprise the design, such as parameters for external signals, and the stimulation data referred to previously.
Information contained in the design data base 100 is then provided to the test program generator 102. The test program generator 102 generates a test program from the design database which will be executed by the ATE. The test program typically includes a database of external signals and their type, thereby determining what tests need to be performed, and the appropriate executable program code for the automatic test equipment. The test program 104 generated by the test program generator is then loaded into the automatic test equipment 106. Next, the device under test 110 is connected to the automatic test equipment 106, and the test program 104 is executed.
The result of each test performed on device 110 by ATE 106 is stored in the ATE data log 108. When the test is complete, the results of the test in the ATE data log 108 are compared to the design requirements in the design database 100 to determine whether the device has performed satisfactorily on each test.
However, although the ATE datalog 108 contains a record of the device's performance on each test, difficulty exists in analyzing this data. For example, one method of analyzing the data contained in the ATE datalog is to print the ATE datalog onto paper for review by an operator. The operator then compares the printout with a corresponding printout of the design requirements to determine whether the design is satisfactory. However, this method is slow, cumbersome and prone to human error. Another method for analyzing the data from the ATE datalog is to enter the design requirements into a computer, and then compare the ATE datalog with these requirements. However, entering the requirements into a computer is a difficult requirement because numerous comparisons or checks must be made. For example, all required functional tests performed and the appropriate start and stop memory locations used for the functional tests must be recorded.
Also, it is important that a measurement exists for each test and for each signal as required. Further still, for each test, it must be verified that the correct forcing value and correct test limits were used. If a test result is missing in the standard datalog file, or a forcing value or limit is incorrect, the analysis of the data contained in the ATE datalog is unreliable. Therefore, this method lends itself to error because the design requirements often fail to exactly match the tests performed. Accordingly, it is an object of the present invention to overcome the above-mentioned problems in the art.